﻿<RadzenStack AlignItems="AlignItems.Start" Wrap="FlexWrap.Wrap">
    <RadzenTemplateForm TItem="UserEditRequestDto" Data="@_editRequestDto" Submit="OnSubmit">
        <RadzenStack class="rz-mb-2">
            <RadzenRow>
                <RadzenColumn Size="12" SizeSM="12">
                    <RadzenUpload Url="http://localhost:5100/api/v1/files/upload?bucketName=avatar"
                                  Progress=@(args => ProgressUploadHandler(args))
                                  Complete="CompleteUploadHandler">
                    </RadzenUpload>
                    <RadzenImage Path="@_editRequestDto.Avatar" Style="width: 64px;height:64px;" />
                </RadzenColumn>
                <RadzenColumn Size="12" SizeSM="6">
                    <RadzenFormField Text="用户名" Style="width: 100%;">
                        <RadzenTextBox @bind-Value="@_editRequestDto.UserName"
                                       Disabled="Key.HasValue"
                                       Style="width: 100%;" />
                    </RadzenFormField>
                </RadzenColumn>
                <RadzenColumn Size="12" SizeSM="6">
                    <RadzenFormField Text="姓名" Style="width: 100%;">
                        <RadzenTextBox @bind-Value="@_editRequestDto.RealName" Style="width: 100%;" />
                    </RadzenFormField>
                </RadzenColumn>
                @if (!Key.HasValue)
                {
                    <RadzenColumn Size="12" SizeSM="6">
                        <RadzenFormField Text="密码" Style="width: 100%;">
                            <RadzenPassword @bind-Value="@_editRequestDto.Password" Style="width: 100%;"></RadzenPassword>
                        </RadzenFormField>
                    </RadzenColumn>
                }
                <RadzenColumn Size="12" SizeSM="6">
                    <RadzenFormField Text="邮箱" Style="width: 100%;">
                        <RadzenTextBox @bind-Value="@_editRequestDto.Email" Style="width: 100%;" />
                    </RadzenFormField>
                </RadzenColumn>
                <RadzenColumn Size="12" SizeSM="6">
                    <RadzenFormField Text="联系方式" Style="width: 100%;">
                        <RadzenTextBox @bind-Value="@_editRequestDto.Phone" Style="width: 100%;" />
                    </RadzenFormField>
                </RadzenColumn>
                <RadzenColumn Size="12" SizeSM="6">
                    <RadzenFormField Text="性别" Style="width: 100%;">
                        <RadzenRadioButtonList @bind-Value=@_editRequestDto.Sex TValue="string" Style="margin:9px !important;">
                            <Items>
                                <RadzenRadioButtonListItem Text="Male" Value="@("Male")" />
                                <RadzenRadioButtonListItem Text="Female" Value="@("Female")" />
                            </Items>
                        </RadzenRadioButtonList>
                    </RadzenFormField>
                </RadzenColumn>
                <RadzenColumn Size="12" SizeSM="6">
                    <RadzenFormField Text="出生日期" Style="width: 100%;">
                        <RadzenDatePicker @bind-Value=@_editRequestDto.Birthday />
                    </RadzenFormField>
                </RadzenColumn>
                <RadzenColumn Size="12" SizeSM="6">
                    <RadzenFormField Text="用户状态" Style="width: 100%;">
                        <RadzenDropDown Data="@(Enum.GetValues(typeof(UserStateEnum)).Cast<Enum>())" @bind-Value=@_editRequestDto.DataState>
                        </RadzenDropDown>
                    </RadzenFormField>
                </RadzenColumn>
                <RadzenColumn Size="12" SizeSM="12">
                    <RadzenFormField Text="描述" Style="width: 100%;">
                        <RadzenTextArea @bind-Value=@_editRequestDto.Description></RadzenTextArea>
                    </RadzenFormField>
                </RadzenColumn>
            </RadzenRow>
        </RadzenStack>
        <RadzenStack Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.End">
            <RadzenButton ButtonStyle="ButtonStyle.Light" Text="Cancel" Variant="Variant.Flat" Click="@CancelButtonClick" />
            <RadzenButton ButtonStyle="ButtonStyle.Primary" ButtonType="ButtonType.Submit" Icon="save" Text="Save" Variant="Variant.Flat" />
        </RadzenStack>
    </RadzenTemplateForm>

</RadzenStack>
